home *** CD-ROM | disk | FTP | other *** search
/ Die Speccy' 97 / Die Speccy' 97.iso / amiga_system / the_aminet / comm / bbs / amms20d.lha / amms / menu / Game.bat < prev    next >
DOS Batch File  |  1995-08-20  |  5KB  |  208 lines

  1. ;    $VER: 1.01 / 12.02.1994
  2. ; GAME-Menue
  3. ; ----------
  4. ; Im Menu ist Command-Bit 6 gesetzt. Deshalb kann der User definiert
  5. ; auf Befehle zugreifen, auf die er normalerweise keinen Zugriff hat.
  6. ; Die Variable COM wird zum Erkennen von Fehlern benutzt. Tritt ein
  7. ; Fehler auf, so wird in die Routine SAVE_ERROR verzweigt, die den Fehler
  8. ; im File mbdat:menu.err protokolliert.
  9. ; Die Variable JUMP wird zum eventuellen Sprung von einem Untermenue zum
  10. ; anderen benutzt, ohne das Hauptmenue dazwischen aufzurufen. In dieser
  11. ; Variable muss dann das entsprechende Label des Untermenues stehen.
  12. ; Soll kein Schnell-Wechsel stattfinden, so darf die Variable JUMP nicht
  13. ; geaendert werden.
  14. ;
  15.  
  16. ;
  17. ; **** Message-Menue
  18. ;
  19. MENU="GAME"                ; Name des Menues
  20. _on error SAVE_ERROR            ; Beim Fehler -> Fehlerbehandlungsrou.
  21.  
  22. ; Menuetext ausgeben und Tasten abfragen
  23.  
  24. MENU:
  25. COM="MENU"                ; Menupunkt in Variable COM speichern
  26. COMNAME="Game-Menu"            ; WHO-Befehlsname setzen
  27. _menu/file "menu:'{ALANGUAGE}'/game.txt" -
  28.  "^R" MENU -                ; Bildschirm erneuern
  29.  "1" HELP_SNAKE -            ; Hilfe zu Snake
  30.  "2" HELP_GREED -            ; Hilfe zu Greed
  31.  "A" GW -                ; Global War
  32.  "B" CLI -                ; Befehlsebene
  33.  "C" BATTLESHIP -            ; Battleship spielen
  34.  "G" GREED -                ; Greed spielen
  35.  "H" HANGMAN -                ; Hangman spielen
  36.  "K" KNIWWEL -                ; Kniwwel spielen
  37.  "O" WOLITAIRE -            ; Wolitaire spielen
  38.  "P" PACMAN -                ; Pacman spielen
  39.  "R" ROBOTS -                ; Robots spielen
  40.  "S" SNAKE -                ; Snake spielen
  41.  "Q" MAIN -                ; Hauptmenue
  42.  "W" WANDERER                ; Wanderer spielen
  43.  
  44. ;
  45. ; **** Endroutine
  46. ; **** Diese Routine muss fuer das Beenden des Menues aufgerufen werden.
  47. ;
  48. END:
  49. _eod                    ; Ende
  50.  
  51. ;
  52. ; **** Hilfe zu Greed
  53. ;
  54. HELP_GREED:
  55. COM="HELP GREED"            ; Menupunkt setzen
  56. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  57. _help game greed            ; Hilfe zu Greed anzeigen
  58. _gosub WAIT                ; Auf Taste warten
  59. _goto MENU                ; -> Menue
  60.  
  61. ;
  62. ; **** Hilfe zu Snake
  63. ;
  64. HELP_SNAKE:
  65. COM="HELP SNAKE"            ; Menupunkt setzen
  66. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  67. _help game snake            ; Hile zu Snake anzeigen
  68. _gosub WAIT                ; Auf Taste warten
  69. _goto MENU                ; -> Menue
  70.  
  71. ;
  72. ; **** Rueckkehr in die Befehlsebene
  73. ;
  74. CLI:
  75. COM="CLI"                ; Menupunkt setzen
  76. JUMP=="CLI"                ; Einsprunglabel im Main-Menue setzen
  77. _goto END                ; Ende der Batchdatei
  78.  
  79. ;
  80. ; **** GW spielen
  81. ;
  82. GW:
  83. COM="GAME GW"                ; Menupunkt setzen
  84. COMNAME=COM                ; WHO-Befehlsname setzen
  85. _if/i {LEVEL} > GUESTLEVEL then -    ; Wenn kein Gast -> GW spielen
  86.     _game GW                ; GW spielen
  87. _goto MENU                ; -> Menue
  88.  
  89. ;
  90. ; **** Battleship spielen
  91. ;
  92. BATTLESHIP:
  93. COM="GAME BATTLESHIP"            ; Menupunkt setzen
  94. COMNAME=COM                ; WHO-Befehlsname setzen
  95. _game battleship            ; Battleship spielen
  96. _goto MENU                ; -> Menue
  97.  
  98. ;
  99. ; **** Greed spielen
  100. ;
  101. GREED:
  102. COM="GAME GREED"            ; Menupunkt setzen
  103. COMNAME=COM                ; WHO-Befehlsname setzen
  104. _game Greed                ; Greed spielen
  105. _goto MENU                ; -> Menue
  106.  
  107. ;
  108. ; **** Hangman spielen
  109. ;
  110. HANGMAN:
  111. COM="GAME HANGMAN"            ; Menupunkt setzen
  112. COMNAME=COM                ; WHO-Befehlsname setzen
  113. _game Hangman                ; Hangman spielen
  114. _goto MENU                ; -> Menue
  115.  
  116. ;
  117. ; **** Kniwwel spielen
  118. ;
  119. KNIWWEL:
  120. COM="GAME KNIWWEL"            ; Menupunkt setzen
  121. COMNAME=COM                ; WHO-Befehlsname setzen
  122. _game Kniwwel                ; Kniwwel spielen
  123. _goto MENU                ; -> Menue
  124.  
  125. ;
  126. ; **** Wolitaire spielen
  127. ;
  128. WOLITAIRE:
  129. COM="GAME WOLITAIRE"            ; Menupunkt setzen
  130. COMNAME=COM                ; WHO-Befehlsname setzen
  131. _game Wolitaire                ; Wolitaire spielen
  132. _goto MENU                ; -> Menue
  133.  
  134. ;
  135. ; **** Pacman spielen
  136. ;
  137. PACMAN:
  138. COM="GAME PACMAN"            ; Menupunkt setzen
  139. COMNAME=COM                ; WHO-Befehlsname setzen
  140. _game Pacman                ; Pacman spielen
  141. _goto MENU                ; -> Menue
  142.  
  143. ;
  144. ; **** Robots spielen
  145. ;
  146. ROBOTS:
  147. COM="GAME ROBOTS"            ; Menupunkt setzen
  148. COMNAME=COM                ; WHO-Befehlsname setzen
  149. _game Robots                ; Robots spielen
  150. _goto MENU                ; -> Menue
  151.  
  152. ;
  153. ; **** Snake spielen
  154. ;
  155. SNAKE:
  156. COM="GAME SNAKE"            ; Menupunkt setzen
  157. COMNAME=COM                ; WHO-Befehlsname setzen
  158. _game Snake                ; Snake spielen
  159. _goto MENU                ; -> Menue
  160.  
  161. ;
  162. ; **** Wanderer spielen
  163. ;
  164. WANDERER:
  165. COM="GAME WANDERER"            ; Menupunkt setzen
  166. COMNAME=COM                ; WHO-Befehlsname setzen
  167. _game Wanderer                ; Wnaderer spielen
  168. _goto MENU                ; -> Menue
  169.  
  170. ;
  171. ; **** Main-Menue
  172. ;
  173. MAIN:
  174. COM="MAIN"                ; Menupunkt setzen
  175. _goto END                ; Ende der Batchdatei
  176.  
  177. ;
  178. ; **** SUBROUTINE: Gib einen Infotext aus und warte auf Taste
  179. ;
  180. WAIT:
  181. COM_OLD=COM                ; Alten Menupunkt retten
  182. COM="WAIT"                ; Neuen Menupunkt setzen
  183. _echo/nolf "^J[RETURN]"            ; Gib Wartemeldung aus
  184. _waitkey " ^M"                ; Warte auf Space oder Return
  185. COM=COM_OLD                ; Alten Menupunkt setzen
  186. _return                    ; Ende der Unterroutine
  187.  
  188. ;
  189. ; **** Fehlerbehandlungs-Routine
  190. ;
  191. ; Die Routine erwartet in der Variable COM den Namen des akt. Menupunkts.
  192. ; Sie protokolliert im File mbdat:menu.err die Fehler des Menues.
  193. ;
  194. SAVE_ERROR:
  195. _on error/ignore            ; Alle Fehler ignorieren
  196. _extern echo >>mbdat:menu.err "------------------"
  197. _extern echo >>mbdat:menu.err "Fehler im Menu"
  198. _extern echo >>mbdat:menu.err "Menu : 'MENU'"
  199. _extern echo >>mbdat:menu.err "Punkt: 'COM'"
  200. _extern echo >>mbdat:menu.err "User : '{NAME}'"
  201. _extern echo >>mbdat:menu.err "Datum: '{DATE}'"
  202. _extern echo >>mbdat:menu.err "Zeit : '{TIME}'"
  203. _extern echo >>mbdat:menu.err "------------------"
  204. _disk text "menu:'{ALANGUAGE}'/Error.txt"  ; Fehlertext anzeigen
  205. _waitkey " ^M"
  206. _if COM == "Menu" then _goto END    ; Wenn Fehler im Pm-Menu -> Main-Menu
  207. _goto MENU                ; -> Menue
  208.